package com.bt.entity;

import java.math.BigDecimal;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.PropertyNamingStrategy;
import com.fasterxml.jackson.databind.annotation.JsonNaming;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;


@Data
@ApiModel(value = "菜单表")
@AllArgsConstructor
@NoArgsConstructor
@JsonNaming(PropertyNamingStrategy.SnakeCaseStrategy.class)// 下划线驼峰命名转换
public class SysMenu {

    @ApiModelProperty(value = "编号")
    private Integer id;

    @ApiModelProperty(value = "父级编号")
    private Integer pid;

    @ApiModelProperty(value = "路由名称")
    private String path;

    @ApiModelProperty(value = "组件路径")
    private String component;

    @ApiModelProperty(value = "菜单名称")
    private String title;

    @ApiModelProperty(value = "图标")
    private String icon;

    @ApiModelProperty(value = "是否在菜单中显示，0不显示，1显示")
    private Integer isShow;

    @ApiModelProperty(value = "是否缓存，0否，1是")
    private Integer isCache;

    @ApiModelProperty(value = "是否外联，0否，1是")
    private Integer isLink;

    @ApiModelProperty(value = "重定向地址")
    private String redirect;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建时间")
    private Date createDate;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新时间")
    private Date updateDate;

    @ApiModelProperty(value = "删除标记")
    private Integer delFlag;

    @ApiModelProperty(value = "类型，1是菜单，2按钮")
    private Integer type;

    @ApiModelProperty(value = "排序")
    private BigDecimal sort;

    @ApiModelProperty(value = "权限标识")
    private String mark;

    @ApiModelProperty(value = "是否为默认数据，null表示不是，1表示是")
    private String defaultData;


}

